package com.example.zhihu.base;

import io.reactivex.disposables.CompositeDisposable;
import io.reactivex.disposables.Disposable;

public abstract class BaseModel {
    private CompositeDisposable compositeDisposable=null;
    public void addDisposable(Disposable disposable){
        if (compositeDisposable==null){
            synchronized (BaseModel.class){
                if (compositeDisposable==null){
                    compositeDisposable=new CompositeDisposable();
                }
            };
        }
        compositeDisposable.add(disposable);
    }
    public void disposable(){
        if (compositeDisposable!=null){
            compositeDisposable.dispose();
        }
    }
    public void removeDisposable(Disposable disposable){
        if (compositeDisposable!=null){
            compositeDisposable.remove(disposable);
        }
    }
}
